import { computed, ref, onUnmounted } from 'vue';
import dayjs from 'dayjs';

export const useCountDown = () => {
  let timer = null;
  const time = ref(0);

  const formatTime = computed(() => dayjs.unix(time.value).format('mm分ss秒'));

  const start = (currentTime) => {
    // 开始倒计时的逻辑
    // 核心逻辑的编写：每隔1s就减一
    time.value = currentTime;
    timer = setInterval(() => {
      time.value--;
    }, 1000);
  };

  // 组件销毁时清除定时器
  onUnmounted(() => {
    timer && clearInterval(timer);
  });

  return {
    formatTime,
    start,
  };
};
